Eecient Flow-sensitive Interprocedural Computation of Pointer-induced Aliases and Side Eeects

نویسندگان

  • Jong-Deok Choi
  • Michael Burke
  • Paul Carini
چکیده

We present practical approximation methods for computing interprocedural aliases and side eeects for a program written in a language that includes pointers, reference parameters and recursion. We present the following results: 1) An algorithm for ow-sensitive interprocedural alias analysis which is more precise and eecient than the best inter-procedural method known. 2) An extension of traditional ow-insensitive alias analysis which accommodates pointers and provides a framework for a family of algorithms which trade oo precision for eeciency. 3) An algorithm which correctly computes side eeects in the presence of pointers. Pointers cannot be correctly handled by conventional methods for side eeect analysis. 4) An alias naming technique which handles dynamically allocated objects and guarantees the correctness of data-ow analysis. 5) A compact representation based on transitive reduction which does not result in a loss of precision and improves precision in some cases. 6) A method for intraprocedural alias analysis which is based on a sparse representation .

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Ibm Research Report Eecient Flow-insensitive Alias Analysis in the Presence of Point- Ers Flow-insensitive Interprocedural Alias Analysis in the Presence of Pointers

This report has been submitted for publication outside of IBM and will probably be copyrighted if accepted for publication. It has been issued as a Research Report for early dissemination of its contents. In view of the transfer of copyright to the outside publisher, its distribution outside of IBM prior to publication should be limited to peer communications and speciic requests. After outside...

متن کامل

Flow-Insensitive Interprocedural Alias Analysis in the Presence of Pointers

Data-ow analysis algorithms can be classiied into two categories: ow-sensitive and ow-insensitive. To improve eeciency, ow-insensitive interprocedural analyses do not make use of the intrapro-cedural control ow information associated with individual procedures. Since pointer-induced aliases can change within a procedure, applying known ow-insensitive analyses can result in either incorrect or o...

متن کامل

Fully Automatic Verification of Absence of Errors via Interprocedural Integer Analysis

We present a interprocedural C String Static Verifier (iCSSV), a whole program analysis algorithm for verifying the safety of string operations in C programs. The algorithm automatically proves linear relationships among pointer expressions. The algorithm is conservative, i.e., it infers only valid relationships although it may fail to detect some of them. The algorithm is targeted to programs ...

متن کامل

Efficient Flow-Sensitive Interprocedural Data-Flow Analysis in the Presence of Pointers

This paper presents a new worklist algorithm that significantly speeds up a large class of flow-sensitive data-flow analyses, including typestate error checking and pointer analysis. Our algorithm works particularly well for interprocedural analyses. By contrast, traditional algorithms work well for individual procedures but do not scale well to interprocedural analysis because they spend too m...

متن کامل

A Logic for Information Flow Analysis of Pointer Programs

This paper specifies a nontermination-insensitive, interprocedural, information flow analysis for objectoriented programs via a Hoare-like logic. Pointer aliasing is ubiquitous in such programs, and can potentially leak confidential information. Therefore, assertions in the logic not only describe the noninterference property that formalizes confidentiality, but also describe aliasing propertie...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1993